home *** CD-ROM | disk | FTP | other *** search
/ Business Assistant / Business Assistant.iso / home / willrt / ww.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1986-04-20  |  3.8 KB  |  84 lines

  1. 1  REM WW 4/20/86
  2. 8  ON ERROR GOTO 9950:OPEN "F.3" AS #1 LEN=240:GOSUB 12000:ON ERROR GOTO 9900
  3. 10  CLEAR ,49152
  4. 11  AML=49152:SCREEN 0:KEY OFF:CLS
  5. 12  BLOAD"DECOM.BIN",AML:DECOMP=AML+6
  6. 14  LOCATE ,,0
  7. 20  CLS:PRINT"W":DEF SEG=&HB800:N1=PEEK(0):DEF SEG
  8. 22  CLS:PRINT"Q":DEF SEG=&HB800:N2=PEEK(0):DEF SEG
  9. 24  CLS:ICRT=0:IF N1=87 AND N2=81 THEN ICRT=1
  10. 26  IF ICRT>0 THEN WIDTH 40:CO1=7:CO2=0:CO3=0:GOSUB 4860:SHI=0
  11. 27  IF ICRT<1 THEN WIDTH 80:CO1=7:CO2=0:CO3=0:GOSUB 4860:SHI=18
  12. 28  POKE AML+4,ICRT:IF FP>0 THEN 80
  13. 30  ALOD=AML+5*256:BLOAD "LOGO.1",ALOD
  14. 32  ADZ=ALOD+6
  15. 34  GOSUB 1100:GOSUB 30000
  16. 36  CALL DECOMP
  17. 38  GOSUB 4860:GOSUB 31000
  18. 40  V=21:H=4:GOSUB 4800:GOSUB 4880
  19. 42  PRINT ">";:GOSUB 4860
  20. 44  PRINT " LOADING PROGRAM...PLEASE WAIT ";:GOSUB 4880: PRINT "<";:GOSUB 4860
  21. 50  OPEN "WD" FOR INPUT AS #1
  22. 70  INPUT #1,FI%:CLOSE #1
  23. 80  IF FI%>=0 THEN RUN "MAIN"
  24. 85  FOR I=1 TO 4000:NEXT I
  25. 90  RUN "INTRO"
  26. 99  END
  27. 1100  ANUM=ADZ:GOSUB 1300:POKE AML,LB:POKE AML+1,HB
  28. 1102  POKE AML+2,0:POKE AML+3,&HB0:IF ICRT>0 THEN POKE AML+3,&HB8
  29. 1104  POKE AML+4,ICRT:RETURN
  30. 1300  HB=INT(ANUM/256):LB=ANUM-HB*256:RETURN
  31. 1600  I$=INKEY$:IF I$=X$ THEN 1600
  32. 1610  RETURN
  33. 4800  LOCATE V,H+SHI:RETURN:REM VTAB,HTAB
  34. 4820  LOCATE CSRLIN,H+SHI:RETURN:REM HTAB
  35. 4860  COLOR CO1,CO2,CO3:RETURN:REM NORMAL
  36. 4880  COLOR CO1+16,CO2,CO3:RETURN:REM FLASH
  37. 9900  ER=ERR
  38. 9901  CLS:II=0:FOR IJ=1 TO N3:IF ER=ER%(IJ) THEN II=IJ:IJ=N3
  39. 9902  NEXT
  40. 9903  V=3:H=3:GOSUB 4800:PRINT"THE FOLLOWING ERROR HAS OCCURED:":V=V+2:GOSUB 4800:PRINT DQ$ER1$(II)DQ$
  41. 9904  V=CSRLIN+3:GOSUB 4800:IF II>0 THEN 9908
  42. 9906  PRINT"PLEASE REPORT ERROR "ER:V=V+1:H=3:GOSUB 4800:PRINT"AT LINE "ERL" IN PROGRAM "DQ$"WW"DQ$:V=V+1:GOSUB 4800:PRINT"TO NOLO PRESS (415-549-1976).":V=V+2:GOSUB 4800:PRINT"PRESS ANY KEY TO END":GOTO 9930
  43. 9908  PRINT"PLEASE CHECK...":V=V+1:H=3:GOSUB 4800:PRINT ER2$(II):V=V+1:GOSUB 4800:PRINT ER3$(II)
  44. 9910  V=CSRLIN+3:GOSUB 4800:PRINT"THEN EITHER RERUN THE PROGRAM OR"
  45. 9920  V=V+2:GOSUB 4800:PRINT "PRESS ANY KEY TO RESUME"
  46. 9930  I$=INKEY$:IF I$=X$ THEN 9930
  47. 9940  IF II>0 THEN CLS:RESUME
  48. 9949  SYSTEM
  49. 9950  V=2:H=1:CLS:GOSUB 4800:PRINT"Sorry, but there has been a problem":V=V+2:GOSUB 4800:PRINT"loading BASIC. Do the following:":GOSUB 9990
  50. 9952  V=V+1:GOSUB 4800:PRINT"Step 1: exit BASIC by typing":V=V+2:H=12:GOSUB 4800:PRINT"SYSTEM":GOSUB 9990
  51. 9954  H=1:V=V+1:GOSUB 4800:PRINT"Step 2: Reload BASIC by typing:":V=V+1:H=3:GOSUB 4800:PRINT"BASIC/S:240 (OR BASICA/S:240)"
  52. 9956  H=1:V=V+1:GOSUB 4800:PRINT"If you have copied BASIC to your ":V=V+1:GOSUB 4800:PRINT"WillWriter diskette, just type WW":V=V+1:GOSUB 4800:PRINT"(or WWA if you have BASICA).":GOSUB 9990
  53. 9959  END
  54. 9990  H=1:V=V+2:GOSUB 4800:PRINT STRING$(38,"*"):RETURN
  55. 12000  DQ$=CHR$(34):N3=11:DIM ER1$(N3),ER2$(N3),ER3$(N3),ER%(N3)
  56. 12002  ER1$(0)="PROGRAM (OR UNIDENTIFIABLE) ERROR"
  57. 12010  ER%(1)=7:ER1$(1)="OUT OF MEMORY":ER2$(1)="YOUR SYSTEM MEMORY; 128K RAM IS":ER3$(1)="REQUIRED (SOME COMPATIBLES NEED 256K)"
  58. 12020  ER%(2)=25:ER1$(2)="DEVICE FAULT":ER2$(2)="YOUR HARDWARE/INTERFACE CONNECTIONS"
  59. 12030  ER%(3)=27:ER1$(3)="OUT OF PAPER":ER2$(3)="PAPER SUPPLY & PRINTER ON/OFF SWITCH"
  60. 12040  ER%(4)=53:ER1$(4)="FILE NOT FOUND":ER2$(4)="THAT THE WILLWRITER DISKETTE IS OK":ER3$(4)="AND STILL IN DRIVE."
  61. 12050  ER%(5)=57:ER1$(5)="DEVICE I/O ERROR":ER2$(5)="DISK DRIVE AND PRINTER CONNECTIONS"
  62. 12060  ER%(6)=61:ER1$(6)="DISK FULL":ER2$(6)="THAT WW DISKETTE IS IN DRIVE, AND":ER3$(6)="THAT NO FILES HAVE BEEN ADDED TO IT"
  63. 12070  ER%(7)=67:ER1$(7)="TOO MANY FILES":ER2$(7)="THAT WW DISKETTE IS IN DRIVE, AND":ER3$(7)="THAT NO FILES HAVE BEEN ADDED TO IT"
  64. 12080  ER%(8)=68:ER1$(8)="DEVICE UNAVAILABLE":ER2$(8)="DISK DRIVE"
  65. 12090  ER%(9)=70:ER1$(9)="DISK WRITE PROTECT":ER2$(9)="DISKETTE FOR A WRITE PROTECT TAB.":ER3$(9)="(PROGRAM WON'T WORK ONE IN PLACE)"
  66. 12100  ER%(10)=71:ER1$(10)="DISK NOT READY":ER2$(10)="THAT DISKETTE IS IN DRIVE AND THAT":ER3$(10)="THE DISK DRIVE DOOR IS CLOSED"
  67. 12110  ER%(11)=72:ER1$(11)="DISK MEDIA ERROR":ER2$(11)="DISKETTE FOR IMPERFECTIONS"
  68. 12999  RETURN
  69. 30000  ST$="":FOR I=1 TO 240:ST$=ST$+"X":NEXT I
  70. 30002  ST1$=ST$:ST2$=ST1$:ST3$=ST2$:ST4$=ST3$
  71. 30010  IF LEN(ST4$)<>240 THEN END
  72. 30020  AD1=VARPTR(ST1$):AD2=VARPTR(ST2$):AD3=VARPTR(ST3$):AD4=VARPTR(ST4$)
  73. 30030  LB=PEEK(AD1+1):HB=PEEK(AD1+2):POKE &HC082,LB:POKE &HC083,HB
  74. 30032  LB=PEEK(AD2+1):HB=PEEK(AD2+2):POKE &HC084,LB:POKE &HC085,HB
  75. 30034  LB=PEEK(AD3+1):HB=PEEK(AD3+2):POKE &HC086,LB:POKE &HC087,HB
  76. 30036  LB=PEEK(AD4+1):HB=PEEK(AD4+2):POKE &HC088,LB:POKE &HC089,HB
  77. 30038  RETURN
  78. 31000  CLS:JF=0:TT$=ST1$:GOSUB 31050:TT$=ST2$:GOSUB 31050:TT$=ST3$:GOSUB 31050
  79. 31010  JF=1:TT$=ST4$:GOSUB 31050:RETURN
  80. 31050  FOR II=1 TO 6:H=1:GOSUB 4820:IF ICRT<1 OR (II<>6 OR JF<>1) THEN PRINT MID$(TT$,40*II-39,40);
  81. 31051  IF JF>0 AND II=6 THEN 31054
  82. 31052  IF ICRT <1 THEN PRINT
  83. 31054  NEXT:RETURN
  84.